home *** CD-ROM | disk | FTP | other *** search
/ Whiteline: delta / whiteline CD Series - delta.iso / document / texte / numdoc / numdoc.txt
Encoding:
Text File  |  1995-11-25  |  15.3 KB  |  378 lines

  1.                                 NUM_DOC.TXT
  2.  
  3.                Description of the structure of the .NUM-
  4.                File for the CoNnect phone charge counter.
  5.                The English version right after these lines.
  6.  
  7.                Beschreibung des Aufbaus der .NUM-Files für
  8.                den CoNnect-Gebührenzähler. Die deutsche Fas-
  9.                sung befindet sich in der zweiten Hälfte.
  10.  
  11.  
  12.  
  13. The `construction' of a NUM-File
  14. --------------------------------
  15.  
  16. CoNnect can calculate your telephone charge via the number you have 
  17. dialled, the date and time of day and the online time. Since 
  18. different telephone numbers in different areas and distances cause 
  19. different cost, CoNnect has to know, which number dialled at which 
  20. time on which day costs how much. This information is given in the 
  21. CONNECT.NUM file. There's described, how long a `charge unit' lasts 
  22. under several circumstances. This `charge unit' is the basic 
  23. principle of calculating the telephone charge.
  24.  
  25. One example: In Germany a unit in a long-distance call on an 
  26. afternoon of a workday lasts 21 seconds. So a call from Munich to 
  27. Berlin on wednesday, lasting from 4:15pm to 4:33pm (=18 minutes = 
  28. 1080 seconds) `consists' of 52 units (1080/21), each of them for 0.23 
  29. DM, which results in a cost of 11.96 DM. Voila!
  30.  
  31. Next Example: A unit in a regional-distance call after 6pm on 
  32. workdays lasts 2 minutes. So a call from Heidelberg to Karlsruhe of 
  33. the same length as above costs 9 units = 2.07 DM.
  34.  
  35. (The values in these examples will change soon, when German Telekom 
  36. restructure their prices.)
  37.  
  38. Via the NUM file you can specify freely any periods of time for 
  39. individual lengths of charge units.
  40.  
  41.  
  42. Matching:
  43. =========
  44. It is necessary to enter all telephone numbers which possibly can be 
  45. dialled (Don't panic! Only the area codes!). Using jokers (you know 
  46. them from filenames as * and ?, for example) abbreviates this 
  47. procedure dramatically:
  48.  
  49. * stands for a arbitrary amount of characters (also none):
  50.      01*    matches all numbers beginning with 01, e.g. 01300190
  51.      *01*   matches all numbers containing 01, e.g. 06201123456
  52.      *01    matches all numbers ending with 01, e.g. 66743501
  53.      0*1*   matches all numbers beginning with 0 and containing a 1 
  54.             somewhere, e.g. 08851663456
  55.      0*1*2*3 matches all numbers beginning with a 0, ending with a 3 
  56.              and containing a 1 and a 2 after the 1, e.g.            
  57.              09986145288573 or 097712556
  58.  
  59. [] can be used to specify a certain choice of digits for ONE place in the
  60. telephone number, the expression in the brackets replaces exactly ONE digit:
  61.      [125]      matches 1, OR 2, OR 5
  62.      12[345]67  matches 12367, 12467 and 12567
  63.      12[34][56] matches 1235, 1245, 1236 and 1246
  64.      12[3-7]8   matches 1238, 1248, 1258, 1268 and 1278
  65.      1[2-57-9]0 matches 120, 130, 140, 150, 170, 180, 190
  66.  
  67. ^ is the `not' operator:
  68.      123[^5]67  matches 123167, 123267, 123367, 123467, 123667, 
  69.                 123767, 123867, 123967, 123067
  70.      12[^3-8]   matches 121, 122, 129, 120
  71.  
  72.  
  73. All of this can be combined:
  74.      0[1-37-9]45* matches all numbers beginning with 0145, 0245, 
  75.                   0345, 0745, 0845, 0945
  76.  
  77. and so on ...
  78.  
  79.  
  80.  
  81. These jokers are a powerful tool to encode all the area codes in a 
  82. simple way. Now to the NUM file itself. Start an ASCII editor with a 
  83. file CONNECT.NUM. You begin with the specification of the charge unit 
  84. and its cost with the `+e' command giving the price for one unit in 
  85. your currency:
  86.  
  87.      +e 0.23       for 0.23 DM (=23 Pfennig) in Germany
  88.      +e 0.80       for 0.80 Schilling (=80 Groschen) in Austria
  89.      +e 0.10       for 0.10 Franken (=10 Rappen) in Switzerland
  90.  
  91. Now you can specify a `waiting time' for CoNnect for starting the 
  92. charge counter. If you give no time, CoNnect counts already during 
  93. the dialling procedure, even if there's no connect. If you know the 
  94. average period of time from dialling start until the CONNECT 
  95. announcement from the modem, you can give it with the `+t' command. 
  96. Maybe this time is about 15 seconds:
  97.  
  98.      +t 15s
  99.  
  100. Now follows the `big part' with specifying the periods of time, in 
  101. which this and that telephone number causes this and that length of 
  102. the charge unit. It has the following structure ( `+1' means time 
  103. zone 1 and so on):
  104.  
  105. [distance information / matchstrings for telephone numbers]
  106. +1
  107. [time information]
  108. +2
  109. [time information]
  110. +3
  111. [time information]
  112. ...
  113. +n
  114. [time information]
  115. # <unit length for +1> <unit length for +2> ... <unit length for +n> <Zone name>
  116.  
  117. The different time informations don't have to be at least 3 - just an 
  118. example, e.g. in Germany there are only two time zones in 
  119. telephoning (this will also change in the future) ... The [time 
  120. information] consists of the day and the time period, in which this 
  121. time zone is valid:
  122.  
  123.      1.1. 8.00 18.00     means "January 1st, from 8am to 6pm"
  124.      w    0.00 23.59     means "every Sunday, all time"
  125.      w(1) 10.00 15.00    means "every Monday, from 10am to 3pm"
  126.      E    17.00 19.00    means "Easter Sunday, from 5pm to 7pm
  127.  
  128.  
  129.  
  130. A short example (The ; introduces comments):
  131. ---------------------------------------
  132.  
  133.                     ; distance information, i.e. telephone numbers 
  134.                     ; belonging to one distance zone
  135. 01*                 ; all numbers beginning with 01
  136. +1                  ; time zone 1
  137. w    0.00 23.59     ; valid on sunday the whole day (w means `nullth' 
  138.                     ; day of week)
  139. w(6) 0.00 23.59     ; valid on saturday the whole day (w(6) means 
  140.                     ; sixth day of week
  141. +2                  ; time zone 2
  142. w(4) 8.00 18.00     ; valid on thursday between 8am and 6pm
  143. w(5) 10.00 13.00    ; valid on friday between 10am and 1pm
  144. 3.10.               ; valid on October 3rd
  145. +3                  ; time zone 3
  146. E    12:00 20:00    ; valid on Easter Sunday between 12am and 8pm
  147. +4                  ; time zone 4
  148. a                   ; everything else
  149. # 20s 50s 5M 8M Zone 01  ; one unit of time zone 1 for this distance 
  150.                          ; zone lasts  20 seconds, one unit of time 
  151.                          ; zone 2 lasts 50 seconds, one unit of time 
  152.                          ; zone 3 lasts two minutes and one unit of 
  153.                          ; time zone 4 lasts eight minutes; the  name 
  154.                          ; of the zone is "Zone 01", referring to the 
  155.                          ; numbers belonging to it
  156.  
  157. You have already seen, that Easter is implemented for use of 
  158. Christian holidays. The Easter date is computed automatically. There 
  159. are some `fix implemented' expressions to refer to:
  160.  
  161. a    all days
  162. w    start of week (the nullth day = sunday)
  163. m    start of month (only positive increment allowed)
  164. E    Easter sunday
  165. A    First Advent
  166.  
  167. These implemented days can be increased and decreased by adding an 
  168. number in braces (m only increasing!). So you get to hold the other 
  169. weekdays and most of the Christian holidays:
  170.  
  171. w(3)      wednesday
  172. E(1)      Easter Monday
  173. E(49)     Whitsun Sunday
  174. A(-13)    Day of prayer and repentance
  175. A(7)      Second Advent
  176.  
  177. In the # line (the delimiter for the time zone declaration, there 
  178. have to be specified as many unit lenghts as time zones given before. 
  179. the first length given after the # refers to the time zone `+1', the 
  180. second to the time zone `+2' and so on. The name (here `Zone 01') 
  181. needn't to be given, but it's useful. For a long, detailled example 
  182. NUM file, look into the ZUERICH.NUM in the NUM folder.
  183.  
  184.  
  185. *****************************************************************************
  186. *****************************************************************************
  187.  
  188.  
  189. Ausführliche Anleitung für die Programmierung von NUM-Files für den 
  190. CoNnect-Gebührenzähler
  191. ====================================================================
  192.  
  193. Wie ja allseits bekannt, greift die Telekom ab nächstem Jahr tiefer 
  194. in unsere Taschen (etwa so weit, daß sie am Hosenbein mit der 
  195. Hand wieder rauskommen). Nun kam die Befürchtung auf, CoNnect könne 
  196. das dann nicht mehr richtig berechnen. Das ist natürlich falsch. NUM-
  197. Files waren immer schon universeller einsetz- und konfiguirierbar als 
  198. für die bisherigen deutschen Gebührenstrukturen - schließlich wird 
  199. CoNnect ja auch im Ausland verwendet.
  200.  
  201. Bislang lag in den CoNnect-Distributionen auch eine englische Datei 
  202. NUM.DOC bei, die die ausführlicheren Möglichkeiten zur Konfiguration 
  203. beschreibt. Angesichts der neuen Gebührenstruktur wurde der Ruf nach 
  204. einer ausführlichen deutschen Beschreibung laut. Nun, hier kommt sie.
  205.  
  206. ================================================================
  207.  
  208.  
  209.  
  210. Den Teil über die Verwendung der Joker * [ ] - ^ spar' ich mir, der 
  211. steht auch im deutschen Handbuch, Kapitel 4.2.1.
  212.  
  213.  
  214. 1. Schalter zur generellen Konfiguration
  215. ----------------------------------------
  216.                      (Bei diesen Schaltern ist die Default-
  217.                      Einstellung in einer Spalte hier hinten 
  218.                      aufgezählt. Die Schalter können also für die 
  219.                      Telekom-Tarife bis zur Umstellung weggelassen 
  220.                      werden.)                      |
  221.                                                    |
  222.                                                    V
  223.  
  224. +e                                                 (0.23)
  225.  
  226.       Mit dem Schalter +e kann der Preis einer Gebühreneinheit 
  227.       deklariert werden:
  228.       
  229.          +e 0.12  12 Pfennig (Deutschland demnächst)
  230.          +e 0.80  80 Schillig (Österreich)
  231.          +e 0.10  10 Rappen (Schweiz)
  232.          
  233.          
  234. +t                                                 (0)
  235.  
  236.       Bei +t kann die Wartezeit eingegeben werden, nach der CoNnect 
  237.       nach dem Erkennen eines Carriers mit der Zeitnahme beginnen 
  238.       soll. So kann man vermeiden, daß die Dauer der Anwahl mit in 
  239.       die Berechnung eingeht. Ein paar Sekunden sollten üblich sein, 
  240.       vielleicht fünf:
  241.       
  242.          +t 5s
  243.  
  244. +T                                                 (0)
  245.  
  246.       Hier kann man die Zeit angeben, die eine Verbindung mindestens 
  247.       dauern muß, damit sie ins Logfile aufgenommen wird. So läßt 
  248.       sich vermeiden, daß bereits ein kurzer Carrier found/Carrier 
  249.       lost-"Flash" eingetragen wird. Etwa so:
  250.       
  251.          +T 3s
  252.          
  253. +u                                                 (DM)
  254.  
  255.       Mit +u kann die bis zu dreistellige Währungsbezeichnung für die 
  256.       Gebührenanzeige eingegeben werden:
  257.       
  258.          +u SFr   (Schweizer Franken)
  259.          +u hFl   (Niederländische Gulden)
  260.          +u ÖS    (Österreichische Schilling)
  261.          
  262.  
  263. 2. Deklaration der Zeit- und Entfernungszonen
  264. ---------------------------------------------
  265.  
  266. Das NUM-File wird in Entfernungszonen-Blöcke unterteilt. Die 
  267. Entfernungszonen werden durch die Vorwahlen charakterisiert, d.h. 
  268. hier werden alle Vorwahlen eingetragen, die zu einer bestimmten 
  269. Entfernungszone gehören.
  270.  
  271. Innerhalb jedes Blockes werden die verschiedenen Datums- und 
  272. Zeitabschnitte aufgelistet, für die jeweils eine bestimmte 
  273. Einheitenlänge gilt. Am Ende des Blocks werden die Längen der 
  274. Gebühreneinheiten angegeben, die für die zuvor deklarierten 
  275. "Zeitzonen" gelten und fertig ist die Laube.
  276.  
  277. Hier eine Schablone für einen solchen Entfernungszonenblock:
  278.  
  279. [Auflistung der Vorwahlmuster]
  280. +1
  281. [Auflistung von zeitlichen Gültigkeitsbereichen]
  282. +2
  283. [Auflistung von zeitlichen Gültigkeitsbereichen]
  284. +3
  285. [Auflistung von zeitlichen Gültigkeitsbereichen]
  286. ...
  287. +n
  288. [Auflistung von zeitlichen Gültigkeitsbereichen]
  289. # <Einheitenlänge für +1> <... für +2> ... <... für +n> <Zonenname>
  290.  
  291. Es muß keine bestimmte Anzahl von Zeitzonen deklariert werden.
  292.  
  293. Die Auflistung der Vorwahlmuster geschieht nach bekanntem Muster, 
  294. einfach in den Zeilen untereinander weg:
  295.  
  296.    0606*
  297.    062[4-6]*
  298.    0704[578]*
  299.    ...
  300.  
  301. Nun zu der Deklaration der zeitlichen Gültigkeitsbereiche für die 
  302. bestimmte Länge einer Gebühreneinheit. Diese beginnt mit der 
  303. Nummer des Blocks für diese Dauer der Einheit. Daran schließen sich 
  304. beliebig viele Zeilen für die Beschreibung der Uhrzeiten an. Diese 
  305. bestehen in jeweils einer Zeile aus drei Einträgen: Tag, Startzeit 
  306. und Schlußzeit. Zum Beispiel:
  307.  
  308.      +1                  ; Zeitzone 1
  309.      1.1. 8.00 13.00     ; Erster Januar von 8 bis 13 Uhr
  310.      w    0.00 23.59     ; Jeder Sonntag, den ganzen Tag lang
  311.      w(1) 10.00 15.00    ; Jeder Montag, 10 bis 15 Uhr
  312.      E    17.00 19.00    ; Ostersonntag, 17 bis 19 Uhr
  313.      ...
  314.  
  315. So ein Block wird durch den Beginn eines neuen Blocks (in obigem 
  316. Beispiel also "+2" oder durch die 
  317. Gebühreneinheitendauerdeklarationszeile (deutsche Sprache, schöne 
  318. Sprache) abgeschlossen. Diese beginnt mit einem Doppelkreuz und 
  319. dahinter werden die Längen der Gebühreneinheiten für jede 
  320. der zuvor angegebenen Zeitbereiche aufgelistet, optional noch eine 
  321. Bezeichnung für die Entfernungszone. Hierbei bezieht sich die erste 
  322. zahl auf den Bereich von +1, die zweite auf den von +2 und so weiter. 
  323. Wenn die alle anwesend sind, kann dahinter noch die Bezeichnung der 
  324. Entfernungszone, die man gerade beschrieben hat, eingetragen werden.
  325.  
  326.  
  327. Hier ein Beispiel:
  328.  
  329. 01*                        ;  Hier zunächst die Deklaration der 
  330.                            ;  Vorwahlen
  331.                            ;  Telefonnummern mit 01 am Anfang
  332. +1                         ;  Zeitzone 1
  333. w    0.00 23.59            ;     Sonntags den ganzen Tag (Sonntag ist 
  334.                            ;     der nullte tag)
  335. w(6) 0.00 23.59            ;     Samstags den ganzen Tag (Samstag ist 
  336.                            ;     der sechste tag)
  337. +2                         ;  Zeitzone 2
  338. w(4) 8.00 18.00            ;     Donnerstags von 8 bis 18 Uhr
  339. w(5) 10.00 13.00           ;     Freitags von 10 bis 13 Uhr
  340. 3.10.                      ;     am dritten Oktober
  341. +3                         ;  Zeitzone 3
  342. E    12.00 20.00           ;     Ostersonntag von 12 bis 20 Ohr
  343. E(1) 8.00 17.30            ;     Ostermontag von 8 bis 17:30 Uhr
  344. +4                         ;  Zeitzone 4
  345. a                          ;     Alle anderen Daten und Zeiten
  346. # 20s 50s 5M 8M Zone 01    ;  Eine Einheit dauert in den unter +1 
  347.                            ;  beschriebenen Zeiten 20 Sekunden, in 
  348.                            ;  den unter +2 beschriebenen 50 Sekunden, 
  349.                            ;  in den unter +3 beschriebenen fünf 
  350.                            ;  Minuten und an den unter +4 
  351.                            ;  beschriebenen acht Minuten. Die hier 
  352.                            ;  beschriebene Entfernungszone wird als   
  353.                            ;  "Zone 01" (in Anlehnung an die          
  354.                            ;  Vorwahlen) bezeichnet.
  355.  
  356. Wie man sieht, ist Ostern bereits automatisch eingebaut (wird nach 
  357. der Gaußschen Osterformel berechnet), das vereinfacht die Benutzung 
  358. von bundeseinheitlichen beweglichen christlichen Feiertagen. Das 
  359. gleiche gilt für den ersten Advent und einige weitere 
  360. "Makrobuchstaben":
  361.  
  362. a  Jeder Tag
  363. w  Wochenanfang (Sonntag = Null)
  364. m  Monatsanfang (hier dürfen nur positive Zahlen addiert werden)
  365. E  Ostersonntag
  366. A  Erster Advent
  367.  
  368. Von da aus kann man durch die Angabe einer Zahl in Klammern dahinter 
  369. auf andere Tage Bezug nehmen. Außer beim Monatsanfang können dies 
  370. positive und negative Zahlen sein. Zum Beispiel:
  371.  
  372. w(3)     Mittwoch
  373. E(1)     Ostermontag
  374. E(49)    Pfingstsonntag
  375. A(-13)   Buß- und Bettag
  376. A(7)     zweiter Advent
  377.  
  378.